<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<link rel="STYLESHEET" href="lib.css" type='text/css' />
<link rel="SHORTCUT ICON" href="../icons/pyfav.png" type="image/png" />
<link rel='start' href='../index.html' title='Python documentation Index' />
<link rel="first" href="lib.html" title='Python library Reference' />
<link rel='contents' href='contents.html' title="Contents" />
<link rel='index' href='genindex.html' title='Index' />
<link rel='last' href='about.html' title='About this document...' />
<link rel='help' href='about.html' title='About this document...' />
<link rel="prev" href="module-urlparse.html" />
<link rel="parent" href="module-urlparse.html" />
<link rel="next" href="module-SocketServer.html" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name='aesop' content='information' />
<title>18.17.1 Results of urlparse() and urlsplit() </title>
</head>
<body>
<div class="navigation">
<div id='top-navigation-panel' xml:id='top-navigation-panel'>
<table align="center" width="100%" cellpadding="0" cellspacing="2">
<tr>
<td class='online-navigation'><a rel="prev" title="18.17 urlparse  "
  href="module-urlparse.html"><img src='../icons/previous.png'
  border='0' height='32'  alt='Previous Page' width='32' /></a></td>
<td class='online-navigation'><a rel="parent" title="18.17 urlparse  "
  href="module-urlparse.html"><img src='../icons/up.png'
  border='0' height='32'  alt='Up one Level' width='32' /></a></td>
<td class='online-navigation'><a rel="next" title="18.18 socketserver  "
  href="module-SocketServer.html"><img src='../icons/next.png'
  border='0' height='32'  alt='Next Page' width='32' /></a></td>
<td align="center" width="100%">Python Library Reference</td>
<td class='online-navigation'><a rel="contents" title="Table of Contents"
  href="contents.html"><img src='../icons/contents.png'
  border='0' height='32'  alt='Contents' width='32' /></a></td>
<td class='online-navigation'><a href="modindex.html" title="Module Index"><img src='../icons/modules.png'
  border='0' height='32'  alt='Module Index' width='32' /></a></td>
<td class='online-navigation'><a rel="index" title="Index"
  href="genindex.html"><img src='../icons/index.png'
  border='0' height='32'  alt='Index' width='32' /></a></td>
</tr></table>
<div class='online-navigation'>
<b class="navlabel">Previous:</b>
<a class="sectref" rel="prev" href="module-urlparse.html">18.17 urlparse  </a>
<b class="navlabel">Up:</b>
<a class="sectref" rel="parent" href="module-urlparse.html">18.17 urlparse  </a>
<b class="navlabel">Next:</b>
<a class="sectref" rel="next" href="module-SocketServer.html">18.18 SocketServer  </a>
</div>
<hr /></div>
</div>
<!--End of Navigation Panel-->

<h2><a name="SECTION00201710000000000000000"></a><a name="urlparse-result-object"></a>
<br>
18.17.1 Results of <tt class="function">urlparse()</tt> and <tt class="function">urlsplit()</tt>
            
</h2>

<p>
The result objects from the <tt class="function">urlparse()</tt> and
<tt class="function">urlsplit()</tt> functions are subclasses of the tuple
type.  These subclasses add the attributes described in those
functions, as well as provide an additional method:

<p>
<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline">
  <td><nobr><b><tt id='l2h-4287' xml:id='l2h-4287' class="method">geturl</tt></b>(</nobr></td>
  <td><var></var>)</td></tr></table></dt>
<dd>
  Return the re-combined version of the original URL as a string.
  This may differ from the original URL in that the scheme will always
  be normalized to lower case and empty components may be dropped.
  Specifically, empty parameters, queries, and fragment identifiers
  will be removed.

<p>
The result of this method is a fixpoint if passed back through the
  original parsing function:

<p>
<div class="verbatim"><pre>
&gt;&gt;&gt; import urlparse
&gt;&gt;&gt; url = 'HTTP://www.Python.org/doc/#'

&gt;&gt;&gt; r1 = urlparse.urlsplit(url)
&gt;&gt;&gt; r1.geturl()
'http://www.Python.org/doc/'

&gt;&gt;&gt; r2 = urlparse.urlsplit(r1.geturl())
&gt;&gt;&gt; r2.geturl()
'http://www.Python.org/doc/'
</pre></div>

<p>

<span class="versionnote">New in version 2.5.</span>

</dl>

<p>
The following classes provide the implementations of the parse results::

<p>
<dl><dt><b><span class="typelabel">class</span>&nbsp;<tt id='l2h-4288' xml:id='l2h-4288' class="class">BaseResult</tt></b>
<dd>
  Base class for the concrete result classes.  This provides most of
  the attribute definitions.  It does not provide a <tt class="method">geturl()</tt>
  method.  It is derived from <tt class="class">tuple</tt>, but does not override the
  <tt class="method">__init__()</tt> or <tt class="method">__new__()</tt> methods.
</dl>

<p>
<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline">
  <td><nobr><b><span class="typelabel">class</span>&nbsp;<tt id='l2h-4289' xml:id='l2h-4289' class="class">ParseResult</tt></b>(</nobr></td>
  <td><var>scheme, netloc, path, params, query, fragment</var>)</td></tr></table></dt>
<dd>
  Concrete class for <tt class="function">urlparse()</tt> results.  The
  <tt class="method">__new__()</tt> method is overridden to support checking that the
  right number of arguments are passed.
</dl>

<p>
<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline">
  <td><nobr><b><span class="typelabel">class</span>&nbsp;<tt id='l2h-4290' xml:id='l2h-4290' class="class">SplitResult</tt></b>(</nobr></td>
  <td><var>scheme, netloc, path, query, fragment</var>)</td></tr></table></dt>
<dd>
  Concrete class for <tt class="function">urlsplit()</tt> results.  The
  <tt class="method">__new__()</tt> method is overridden to support checking that the
  right number of arguments are passed.
</dl>

<div class="navigation">
<div class='online-navigation'>
<p></p><hr />
<table align="center" width="100%" cellpadding="0" cellspacing="2">
<tr>
<td class='online-navigation'><a rel="prev" title="18.17 urlparse  "
  href="module-urlparse.html"><img src='../icons/previous.png'
  border='0' height='32'  alt='Previous Page' width='32' /></a></td>
<td class='online-navigation'><a rel="parent" title="18.17 urlparse  "
  href="module-urlparse.html"><img src='../icons/up.png'
  border='0' height='32'  alt='Up one Level' width='32' /></a></td>
<td class='online-navigation'><a rel="next" title="18.18 socketserver  "
  href="module-SocketServer.html"><img src='../icons/next.png'
  border='0' height='32'  alt='Next Page' width='32' /></a></td>
<td align="center" width="100%">Python Library Reference</td>
<td class='online-navigation'><a rel="contents" title="Table of Contents"
  href="contents.html"><img src='../icons/contents.png'
  border='0' height='32'  alt='Contents' width='32' /></a></td>
<td class='online-navigation'><a href="modindex.html" title="Module Index"><img src='../icons/modules.png'
  border='0' height='32'  alt='Module Index' width='32' /></a></td>
<td class='online-navigation'><a rel="index" title="Index"
  href="genindex.html"><img src='../icons/index.png'
  border='0' height='32'  alt='Index' width='32' /></a></td>
</tr></table>
<div class='online-navigation'>
<b class="navlabel">Previous:</b>
<a class="sectref" rel="prev" href="module-urlparse.html">18.17 urlparse  </a>
<b class="navlabel">Up:</b>
<a class="sectref" rel="parent" href="module-urlparse.html">18.17 urlparse  </a>
<b class="navlabel">Next:</b>
<a class="sectref" rel="next" href="module-SocketServer.html">18.18 SocketServer  </a>
</div>
</div>
<hr />
<span class="release-info">Release 2.5.1, documentation updated on 18th April, 2007.</span>
</div>
<!--End of Navigation Panel-->
<address>
See <i><a href="about.html">About this document...</a></i> for information on suggesting changes.
</address>
</body>
</html>
